package com.ruoyi.basic.service;

import java.util.List;
import com.ruoyi.basic.domain.Player;

/**
 * 播放器配置Service接口
 *
 * @author ruoyi
 * @date 2025-11-13
 */
public interface IPlayerService {
    /**
     * 查询播放器配置
     *
     * @param playerId 播放器配置主键
     * @return 播放器配置
     */
    public Player selectPlayerById(Long playerId);

    /**
     * 根据播放器标识查询播放器配置
     *
     * @param code 播放器标识
     * @return 播放器配置
     */
    public Player selectPlayerByCode(String code);

    /**
     * 查询播放器配置列表
     *
     * @param player 播放器配置
     * @return 播放器配置集合
     */
    public List<Player> selectPlayerList(Player player);

    /**
     * 查询启用的播放器配置列表
     *
     * @return 播放器配置集合
     */
    public List<Player> selectActivePlayerList();

    /**
     * 新增播放器配置
     *
     * @param player 播放器配置
     * @return 结果
     */
    public int insertPlayer(Player player);

    /**
     * 修改播放器配置
     *
     * @param player 播放器配置
     * @return 结果
     */
    public int updatePlayer(Player player);

    /**
     * 批量删除播放器配置
     *
     * @param playerIds 需要删除的播放器配置主键集合
     * @return 结果
     */
    public int deletePlayerByIds(Long[] playerIds);

    /**
     * 删除播放器配置信息
     *
     * @param playerId 播放器配置主键
     * @return 结果
     */
    public int deletePlayerById(Long playerId);

    /**
     * 校验播放器标识是否唯一
     *
     * @param player 播放器配置
     * @return 结果
     */
    public String checkCodeUnique(Player player);

    /**
     * 导入播放器配置数据
     *
     * @param playerList 播放器配置列表
     * @param isUpdateSupport 是否更新支持，如果已存在，则进行更新数据
     * @param operName 操作用户
     * @return 结果
     */
    public String importPlayer(List<Player> playerList, Boolean isUpdateSupport, String operName);
}
